from langgraph_coder.src.agent.chain.generate_chain import GenerateChain


class ReflectNode:
    def __init__(self, code_gen_chain: GenerateChain):
        self.code_gen_chain = code_gen_chain

    def __call__(self, state: dict) -> dict:
        print("---代码反馈结点---")

        messages = state["messages"]

        # 在此部分可以加提示词或者是调用外部工具来增加反馈能力

        reflections = self.code_gen_chain.get_solution(messages)

        messages += [("assistant", f"以下是关于错误的反思： {reflections}")]

        state["messages"] =  messages
        return state
